home *** CD-ROM | disk | FTP | other *** search
/ A.C.E. 1 / ACE CD 1.iso / files / utils / acroarex.dms / in.adf / Support / CmdSHELL.crip < prev    next >
Encoding:
Text File  |  1994-06-08  |  1.2 KB  |  66 lines

  1. /** $VER: CmdShell.acrx 1.0 (08 Jun 1994)
  2.  ** ArCo's
  3.  ** Original by David N. Junod
  4.  ** Modified by Bill Hawes
  5.  ** Modified by Michael Sewell
  6.  **/
  7.  
  8.  
  9. OPTIONS RESULTS
  10. OPTIONS FAILAT 100
  11. OPTIONS PROMPT "Cmd> "
  12.  
  13. ADDRESS ARCO
  14.   /* Display instructions */
  15. /*  SAY 'Enter commands, or press CTRL-\ to exit.' */
  16.  
  17.   /* Get input until the user closes the Command Shell */
  18.   DO FOREVER
  19.  
  20.     /* Wait until the user types a command followed by RETURN */
  21.     PARSE PULL cmdString
  22.  
  23.     SELECT
  24.       WHEN (cmdString = "") | (UPPER(cmdString) = "Q") | (UPPER(cmdString) = "ENDCLI") THEN do
  25.     LEAVE
  26.       END
  27.  
  28.       OTHERWISE DO
  29.         CALL HandleCmd(cmdString)
  30.       END;
  31.  
  32.     END
  33.   END
  34.  
  35.   RETURN
  36.  
  37.  
  38. HandleCmd: PROCEDURE
  39. PARSE ARG cmdString
  40.  
  41.   /* Execute the command */
  42.   cmdString
  43.  
  44.   /* See if the command succeeded */
  45.   IF RC = 0 THEN do
  46.     IF symbol('RESULT') == "VAR" THEN DO
  47.       SAY RESULT
  48.     END
  49.     RETURN
  50.   END
  51.  
  52.   /* Wasn't an editor command, try running it as an ARexx script */
  53.   if RC > 0  THEN DO
  54.     ADDRESS REXX cmdString
  55.  
  56.     /* Wasn't an ARexx script, try running it as a CLI command */
  57.     IF RC > 0 THEN DO
  58.       ADDRESS COMMAND cmdString
  59.     END
  60.  
  61.   END;
  62.  
  63.   RETURN
  64. /* end of HandleCmd() */
  65.  
  66.